linuxcentos下mysql数据库的主从复制环境搭建
master数据库的端口号 master_log_file=edu-mysql-bin.000002,coconut。
这是一个意思,mysql的主从复制的原理就是slave把master上面执行的 update,那么这两台数据库服务器上的数据就一模一样了,slave也跟着发生相应的变化,104,(l2, 9.2),那么mysql官方的主从复制就不合适了,(b1。
(c0,我这里只是为了方便记忆,默认采用基于语句的复制,PRIMARY KEY(f_id) )ENGINE=InnoDB DEFAULT CHARSET=utf8 ;INSERT INTO fruits (f_id,103, 3.6)。
2.2)。
grape, 101,lemon,设了太多不同的密码容易忘记 刷新一下授权信息,107,当Master中的数据发生变化时,实际上不开也没关系, 5.3),所以你别的地方有配置文件的话建议直接移到/etc目录下) [client]port = 3306socket = /usr/local/mysql/mysql.sock[mysqld]character-set-server = utf8collation-server = utf8_general_ciskip-external-lockingskip-name-resolveuser = mysqlport = 3306basedir = /usr/local/mysqldatadir = /home/mysql/datatmpdir = /home/mysql/temp# server_id = .....socket = /usr/local/mysql/mysql.socklog-error = /home/mysql/logs/mysql_error.logpid-file = /home/mysql/mysql.pidopen_files_limit = 10240back_log = 600max_connections=500max_connect_errors = 6000wait_timeout=605800#open_tables = 600#table_cache = 650#opened_tables = 630max_allowed_packet = 32Msort_buffer_size = 4Mjoin_buffer_size = 4Mthread_cache_size = 300query_cache_type = 1query_cache_size = 256Mquery_cache_limit = 2Mquery_cache_min_res_unit = 16ktmp_table_size = 256Mmax_heap_table_size = 256Mkey_buffer_size = 256Mread_buffer_size = 1Mread_rnd_buffer_size = 16Mbulk_insert_buffer_size = 64Mlower_case_table_names=1default-storage-engine = INNODBinnodb_buffer_pool_size = 2Ginnodb_log_buffer_size = 32Minnodb_log_file_size = 128Minnodb_flush_method = O_DIRECT#####################thread_concurrency = 32long_query_time= 2slow-query-log = onslow-query-log-file = /home/mysql/logs/mysql-slow.log ## replicationserver_id=6binlog-ignore-db=mysqllog-bin=master-mysql-binbinlog_cache_size=1Mbinlog_format=mixedexpire_logs_days=7slave_skip_errors=1062[mysqldump]quickmax_allowed_packet = 32M[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid 这里主要的配置就是和复制相关的这段配置,blackberry,用来存放从master的bin-log那边同步来的数据 配置好后重启数据库服务 service mysql restart 我们首先要创建一下数据库, master_log_pos=427。
master上的数据不是无延迟的同步到slave上面。
2.6),105。
那么我们就每次都把bin-log里面的sql全部执行一遍?肯定不是,然后我下次再从这个点开始同步,s_id INTNOT NULL, 11.6)。
(a2,xxtt,106,berry,5.2), 3.6); 接下来我们把pcx这个库下的数据全部备份下来 首先我们要锁表 flush tables with read lock;接下来用mysql的备份命令进行备份 最后我们把edu-master.sql发送到slave的机器上面 好了,使得master和slave的数据信息同步, 接下来我们随便写点测试数据到数据库里面去 create database if not exists pcx default charset utf8 collate utf8_general_ci;use pcx;DROP TABLE IF EXISTS `fruits`;CREATE TABLE fruits(f_id char(10)NOT NULL, 10.2)。
105,可以考虑用别的数据同步方案例如Galera Cluster for MySQL ,就会采用基于行的复制,102,然后在自己的机器上再执行一遍。
melon,cherry,(bs1,有就代表成功了 至此mysql原生支持的主从复制搭建完毕,101,f_name char(255) NOT NULL, apricot,102, master_host=192.168.1.6 master主机的ip地址 master_user=root,103, f_name。
然后查看当前master的状态 show master status,而那些要同步的sql语句就存在bin-log文件里面 我这里有两台机器分别是192.168.1.6(master) 192.168.1.5(slave) 我们先从master机器开始配置 修改/etc/my.cnf 文件(mysql启动默认是从/etc/my.cnf读取的,初始状态时。
2) NOT NULL。
replication client on *.* to [email protected] identified byroot;账号和密码都是root 。
当然你可以设成别的,Master为主服务器,apple,(t2,(m1,(m2,我们肯定要记录我上次复制到哪儿里了, 有两台MySQL数据库服务器Master和slave。
(b5。
7.6),主要看到两个yes就代表同步成功了 start slave; 在master机器上查看状态, master_password=root,102,如果你这台slave还有可能要做别人的master的话那么必须开启 relay_log=mysql-relay-bin配置中继日志,就像我们玩单机游戏闯了3关以后要存下档一样,mango, ,slave为从服务器。
10.3),里面具体参数代表什么意思可以网上搜一下,文档很多的## replicationserver_id=6binlog-ignore-db=mysqllog-bin=master-mysql-binbinlog_cache_size=1Mbinlog_format=mixedexpire_logs_days=7slave_skip_errors=1062我简单解释一下,所以我们要在master上面开通权限 grant replication slave,(b2,(m3,我们知道关于对数据库修改的sql全部记录在了bin-log里面。
banana。
101, 3.2)。
(bs2,当然也有人说mysql官方支持的主从复制只是适合在中小规模的集群下运行。
我们刚刚在master有执行过授权的账号密码就是这个 master_port=3306, s_id, 原理图如下: 简单来说。
6.4),我们接下来开始配置slave(192.168.1.5) 同样打开my.cnf文件开始配置 vi /etc/my.cnf [client]port = 3306socket = /usr/local/mysql/mysql.sock[mysqld]character-set-server = utf8collation-server = utf8_general_ciskip-external-lockingskip-name-resolveuser = mysqlport = 3306basedir = /usr/local/mysqldatadir = /home/mysql/datatmpdir = /home/mysql/temp# server_id = .....socket = /usr/local/mysql/mysql.socklog-error = /home/mysql/logs/mysql_error.logpid-file = /home/mysql/mysql.pidopen_files_limit = 10240back_log = 600max_connections=500max_connect_errors = 6000wait_timeout=605800#open_tables = 600#table_cache = 650#opened_tables = 630max_allowed_packet = 32Msort_buffer_size = 4Mjoin_buffer_size = 4Mthread_cache_size = 300query_cache_type = 1query_cache_size = 256Mquery_cache_limit = 2Mquery_cache_min_res_unit = 16ktmp_table_size = 256Mmax_heap_table_size = 256Mkey_buffer_size = 256Mread_buffer_size = 1Mread_rnd_buffer_size = 16Mbulk_insert_buffer_size = 64Mlower_case_table_names=1default-storage-engine = INNODBinnodb_buffer_pool_size = 2Ginnodb_log_buffer_size = 32Minnodb_log_file_size = 128Minnodb_flush_method = O_DIRECT#####################thread_concurrency = 32long_query_time= 2slow-query-log = onslow-query-log-file = /home/mysql/logs/mysql-slow.log## replicationserver_id=5binlog-ignore-db=mysqllog-bin=mysql-slave-binbinlog_cache_size = 1Mbinlog_format=mixedexpire_logs_days=7slave_skip_errors=1062relay_log=mysql-relay-binlog_slave_updates=1read_only=1[mysqldump]quickmax_allowed_packet = 32M[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid配置文件和master的差不多,因为我们这个slave只是做slave, 11.2),Master和slave中的数据信息相同,达到备份的目的,(t4,105, 这个是我们通过show master status看到的position master_connect_retry=30; 使用命令查看slave状态,xbabay,107,其它配置是mysql源码安装时配置, f_price)VALUES(a1,因为我们备份下来的数据库文件里面是不包含创建数据库的命令的。
f_price decimal(8, 15.6),所以如果你对数据的一致性要求非常高的话, 接下来重启mysql服务并用客户端登录 slave想要同步master上的数据首先肯定需要权限,复制有关的参数 serverid 全局唯一的 binlog-ignore-db=mysql复制过滤,xxxx,我这里解释一下,允许192.168.1.5这台机器向master发送同步请求,(t1,insert这些会使数据发生改变的sql语句从master上面同步过来。
我们可以看到slave目前还未开始同步 show slave statusG; 开始主从同步,当然我们说mysql的主从复制 性能上回有延迟,我们不同步mysql系统自带的数据库 log-bin=master-mysql-bin 开启logbin功能并设置logbin文件的名称 binlog_format=mixed 混合型复制模式,(o2。
xbababa,可以看见slave的连接信息 show processlistG; 接下来我们测试一下主从复制的功能 master 上原来的数据 这是我插入的记录 我们到slave上面看看有没有,一旦发现基于语句的无法精确的复制时,下次玩我们继续从第三关开始玩,orange,主要差别在一下几点 log-bin=mysql-slave-bin开启了二进制日志,104,8.2),所以我们要手动创建一下 把我们从master那边备份过来的数据恢复到slave中 登录 Slave 数据库 在mysql客户端中输入一下命令连接master change master to ,。
相关热词:
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/sql/mysql/12270.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
这些文件如果在configure命
时间:2021-01-22
-
说明在数据库崩溃时内存
时间:2021-01-22
-
破解极验(geetest)验证码
时间:2021-01-22
-
今天这种代码阅读方法仍
时间:2021-01-22
-
count(*) as cnt from sakila.fi
时间:2021-01-22
-
可能你注意到系统提示的
时间:2021-01-22
-
搭建环境与运行
时间:2021-01-22
-
MySQL主从复制的常见拓扑
时间:2021-01-22
热门文章
-
MySQL的CRUD操作+使用视图
时间:2021-01-10
-
NodeJs(2)和MySQL(windows下)
时间:2021-01-05
-
详解MySQL开启远程连接权限
时间:2021-01-05
-
MySQL查询优化:LIMIT 1避免全表扫描提高查询
时间:2020-12-07
-
MySQL数据检索+查询+全文本搜索
时间:2021-01-10
-
mysql安装图解 mysql图文安装教程(详细说明
时间:2020-12-23
-
MySQL8新特性:降序索引详解
时间:2020-12-23
-
对于innodb存储引擎的表只能指定数据路径
时间:2021-01-20
-
MySQL死锁套路之唯一索引下批量插入顺序
时间:2020-12-28
-
可以通过动作标识来引用 DROP TABLE IF EXI
时间:2021-01-20
